import { prisma } from './prisma'

/**
 * 测试数据库连接
 */
export async function testDatabaseConnection(): Promise<boolean> {
  try {
    await prisma.$connect()
    console.log('✅ 数据库连接成功')
    return true
  } catch (error) {
    console.error('❌ 数据库连接失败:', error)
    return false
  }
}

/**
 * 断开数据库连接
 */
export async function disconnectDatabase(): Promise<void> {
  try {
    await prisma.$disconnect()
    console.log('✅ 数据库连接已断开')
  } catch (error) {
    console.error('❌ 断开数据库连接时出错:', error)
  }
}

/**
 * 执行数据库健康检查
 */
export async function healthCheck(): Promise<{ status: string; timestamp: Date }> {
  try {
    await prisma.$queryRaw`SELECT 1`
    return {
      status: 'healthy',
      timestamp: new Date()
    }
  } catch (error) {
    console.error('数据库健康检查失败:', error)
    return {
      status: 'unhealthy',
      timestamp: new Date()
    }
  }
}
